Optimization of start-up transient processes for dual-armed cluster tools with wafer revisiting

ABSTRACT

A method for scheduling dual-armed cluster tools with wafer revisiting is provided. In order to speed up start-up transient processes, the present invention adopts a program evaluation and review technique for the analysis of start-up transient processes and develops optimization algorithms for their scheduling for dual-arm cluster tools. Then, their complexity is analyzed.

CLAIM FOR DOMESTIC PRIORITY

This application claims priority under 35 U.S.C. §119 to the U.S. Provisional Patent Application No. 62/102,111 filed Jan. 12, 2015, the disclosure of which is incorporated herein by reference in its entirety.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains material, which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.

FIELD OF THE INVENTION

The present invention relates to a method for scheduling dual-armed cluster tools with wafer revisiting.

BACKGROUND

The following references are cited in the specification. Disclosures of these references are incorporated herein by reference in their entirety.

List of References:

-   Y. Ahn and J. R. Morrison, “Analysis of circular cluster tools:     Transient behavior and semiconductor equipment models,” in     Proceedings of the 2010 IEEE Conference on Automation Science and     Engineering, Toronto, Canada, pp. 39-44, August 2010. -   M. Bader, R. Hall and G. Strasser, “Integrated processing     equipment,” Solid State Technog., vol.33, no.5, pp.149-154, 1990. -   P. Burggraaf, “Coping with the high cost of wafer fabs.”     Semiconductor International, vol.38, pp. 45-50, 1995. -   W. K. V. Chan, J. Yi, and S. Ding, “Optimal scheduling of     multicluster tools with constant robot moving times: two-cluster     analysis,” IEEE Transactions on Automation Science and Engineering,     vol.8 no. 1, pp. 5-16, January 2011. -   S. Ding, J. Yi, and M. Zhang, “Scheduling multi-cluster tools: An     integrated event graph and network model approach,” IEEE     Transactions on Semiconductor Manufacturing, vol. 19, no. 3, pp.     339-351, August 2006. -   J. H. Lee, H. J. Kim, and T. E. Lee, “Scheduling transient periods     of dual-armed cluster tools,” in Proceedings of the 2012 IEEE     International Conference on Mechatronics and Automation, Chengdu,     China, pp. 1569-1574, August 2012. -   D. J. Kim, E. Cimren, R. Havery, and A. K. Zaidi, “Improving cluster     tools performance using colored Petri nets”, Semiconductor     Manufacturing,” Winter simulation conference:1-205. 2012. -   T. K. Kim, C. Jung and T. E. Lee, “Scheduling start-up and     close-down periods of dual-armed cluster tools with wafer delay     regulation” International Journal of Production Research, vol. 50,     no. 10, pp. 2785-2795, May 2012. -   H. J. Kim, J. H. Lee, C. Jung, and T. E. Lee, “Scheduling cluster     tools with ready time constraints for consecutive small lots,” IEEE     Transactions on Automation Science and Engineering, vol. 10, no. 1,     pp. 145-159, January 2013a. -   T. K. Kim, C. Jung, and T. E. Lee, “Scheduling start-up and     closedown periods of dual-armed cluster tools with wafer delay     regulation,” International Journal of Production Research, vol. 50,     no. 10, pp. 2785-2795, May 2013b. -   H. Y. Lee and T. E. Lee, “Scheduling single-arm cluster tools with     reentrant wafer flows,” IEEE Transactions on Semiconductor     Manufacturing, vol. 19, no. 2, pp. 226-240, May 2006. -   T. L. Perkinson, P. K. Maclarty, R. S. Gyurcsik, and R. K. Cavin,     III, “Single-wafer cluster tools performance: An analysis of     throughput,” IEEE Transactions on Semiconductor Manufacturing, vol.     7, no. 2, pp. 369-373, May 1994. -   T. L. Perkinston, R. S. Gyurcsik, and P. K. Maclarty, “Single-wafer     cluster tool performance: An analysis of effects of redundant     chambers and revisitation sequences on throughput,” IEEE     Transactions on Semiconductor Manufacturing, vol. 9, no. 2, pp.     384-400. May 1996. -   Yan, Qiao, N. Q. Wu, and M. C. Zhou, “A Petri Net-Based Novel     Scheduling Approach and its Cycle Time Analysis for Dual-Arm cluster     Tools with Wafer Revisiting” IEEE Transactions on Semiconductor     Manufacturing, vol.26, no.1, pp. 100-110, February 2013. -   S. Venkatesh, R. Davenport, P. Foxhoven, and J. Nulman, “A steady     state throughput analysis of cluster tools: Dual-blade versus     single-blade robots,” IEEE Transactions on Semiconductor     Manufacturing, vol. 10, no. 4, pp. 418-424, November 1997. -   N. Q. Wu and M. C. Zhou, “Colored time Petri nets for modeling and     analysis of cluster tools,” Asian Journal of Control, vol. 12, no.     3, pp. 253-266, 2010. -   N. Q. Wu, C. B. Chu, F. Chu, and M. C. Zhou, “Petri net modeling and     cycle time analysis of dual-arm cluster tools with wafer     revisiting,” IEEE Transaction on Systems Man Cybernetics, Part A,     vol. 43, no. 1, 196-207, January 2013a. -   N. Q. Wu and M. C. Zhou, F. C. Chu and C. B. Chu, “A Petri-net-based     scheduling strategy for dual-arm cluster tools with wafer     revisiting,” IEEE Transaction on Systems Man Cybernetics, Part A,     vol. 43, no. 5, 1182-1194, September 2013b -   U. Wikborg and T. E. Lee, “Noncyclic scheduling for timed discrete     event systems with application to single-armed cluster tools using     Pareto-optimal optimization,” IEEE Transactions on Automation     Science and Engineering, vol. 10, no. 3, pp. 689-710, July 2013. -   J. Yi, S. Ding, and M. Zhang, “Steady-state throughput and     scheduling analysis of multi-cluster tools: A decomposition     approach,” IEEE Transactions on Automation Science and Engineering,     vol. 5, no. 2, pp. 321-336, April 2008. -   W. M. Zuberek, “Timed Petri nets in modeling and analysis of cluster     tools,” IEEE Transaction on Robotics & Automation Magazine, vol. 17,     no. 5, pp.562-575, October 2001. -   W. M. Zuberek, “Cluster tools with chamber revisiting: modeling and     analysis using time Petri nets,” IEEE Transactions on Semiconductor     Manufacturing, vol. 17, no. 3, pp. 333-344, August 2004.

To achieve better quality control and reduce lead time, cluster tools are widely used for wafer processing in semiconductor manufacturing systems with a single-wafer processing technology that processes wafer one by one at a process module (PM). They provide a reconfigurable, flexible and efficient environment [Bader et al., 1990; and Burggraaf, 1995]. A cluster tool consists of several PMs, an aligner module, a wafer handling robot (transfer module), and loadlocks (LL) for wafer cassette loading/unloading, which are mechanically linked together in a radial way and computer-controlled. With a single-arm or dual-arm robot, such tool is correspondingly called a single-arm or dual-arm cluster tool. The latter is shown in FIG. 1.

A cluster tool with two LLs can be operated consecutively without being interrupted. Thus, it can operate in a steady state for most of time. Most prior studies [Chan et al., 2011; Ding et al., 2006; Perkinston et al., 1994; Perkinston et al., 1996; Venkatesh et al., 1997; Wu and Zhou, 2010; Yi et al., 2008; and Zuberek, 2001] were conducted to find an optimal periodical schedule. Only limited researches focused on transient states [Kim et al., 2013a; Kim et al., 2013b; Lee et al., 2012; Ahn and Morrison, 2010; and Wikborg and Lee, 2013] despite their increasing importance. With a given robot task sequence, the transient cycle time of a dual-arm cluster tool is minimized [Kim et al., 2013b]. Deadlock-free conditions are presented for lot switching periods of dual-arm cluster tools [Lee et al., 2012]. A model for transient and steady states is built [Ahn and Morrison, 2010]. When a robot task sequence is determined, an algorithm for an optimal transient cycle is proposed [Kim et al., 2013a, and Wikborg and Lee, 2013]. Since frequent switches between transient and steady states may lead to a deadlock problem, optimizing transient processes for cluster tools is recognized to be a big research challenge.

Some wafer fabrication processes, for instance, atomic layer deposition (ALD), require a wafer to visit more than once a PM under identical processing conditions. Due to such revisits, wafer processes are no longer a flow-shop, and the prior results without considering revisits, e.g. [Kim et al., 2013(a); and Wikborg and Lee, 2013], are no longer applicable. Such revisits make the optimal scheduling of transient processes much more challenging. Note that some well-developed theories or rules for a steady process [Lee and Lee, 2006] are not applicable for scheduling transient processes. Furthermore, deadlock often becomes an issue in a wafer fabrication process with revisit in a cluster tool [Lee and Lee, 2006]. It is certainly much more challenging to schedule a deadlock-prone system to obtain an optimal and deadlock-free schedule. In order to avoid deadlock and minimize makespan for a dual-arm cluster tool with wafer revisit, the studies [Wu and Zhou, 2010; and Zuberek, 2004] have developed Petri net models for performance evaluation and analyzed its cycle time under a swap strategy. They show that the steady state cycle time is determined by the time taken for completing one wafer at the step that has the heaviest workload. In fact, it is the lower bound of the cycle time for the system. However, this result is shown to be not correct in [Wu et al., 2013b], where a swap-based strategy is proposed and leads to a three-wafer cyclic schedule, which includes three local cycles for a revisiting process and three global cycles. It is also shown that the system can never enter its steady state under some conditions. In other words, the steady state-based analysis methods given in [Wu and Zhou, 2010; and Zuberek, 2004] are not applicable and the tool cannot reach the lower bound of cycle time. The multiple local and global cycles reduce the productivity of such cluster tools [Wu et al., 2013a]. Can a schedule with fewer local and global cycles improve the performance? The work [Wu et al., 2013b; and Qiao et al., 2013] answers this question by providing a schedule with two-wafer cycle, and also the one with one cycle only. It finds that the less the number of global cycles is, the shorter the robot waiting time is. Qiao et al. [2013] prove that one-wafer periodic schedule is optimal. They also provide a novel Petri net-based method to evolve a system from a transient state to a steady one. However, the transient process is not optimal despite its easy implementation according to the results to be presented in this work.

Although the minimum transient period is proposed for transient process scheduling [Kim et al., 2012], such conclusion is applicable to a non-revisiting case only. Their method cannot be extended a process with revisits without substantial research. The transient scheduling of dual-arm cluster tools with wafer revisiting to reach a desired steady state optimally is widely open as one has not found any study addressing it.

There is a need in the art for a method to obtain a schedule for dual-armed cluster tools with wafer revisiting process.

SUMMARY OF THE INVENTION

An aspect of the present invention is to provide a method for scheduling dual-armed cluster tools with wafer revisiting process under optimization of start-up transient processes.

According to an embodiment of the present claimed invention, a method for scheduling a dual-armed cluster tools with wafer revisiting, comprises: obtaining, by a processor, a wafer processing time, a wafer loading time, a wafer unloading time, a moving time from one process module to another, and a swapping time; determining, by a processor, one or more algorithms of transient process based on a program evaluation and review technique; computing, by a processor, a time to reach steady state via the algorithms based on the wafer processing time, the wafer loading time, the wafer unloading time, the moving time, and the swapping time; and determining, by a processor, a scheduling strategy given by the algorithm of transient process having a minimal time to reach steady state.

In order to speed up start-up transient processes, the present invention adopts a program evaluation and review technique for the analysis of start-up transient processes and develops optimization algorithms for their scheduling for dual-arm cluster tools.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention are described in more detail hereinafter with reference to the drawings, in which:

FIG. 1 shows a dual-arm cluster tool with four PMs;

FIG. 2A depicts a wafer flow for ALD process;

FIG. 2B depicts a wafer flow process by using one-wafer schedule;

FIG. 3A depicts the PERT from M₀ to M₃;

FIG. 3B depicts the PERT for Case 1;

FIG. 3C depicts the PERT for Case 2;

FIG. 4A depicts variation trend of A, B and C as a₂ increases; and

FIG. 4B depicts variation trend of A, B and C as a₃ increases.

DETAILED DESCRIPTION

In the following description, a method for scheduling dual-armed cluster tools with wafer revisiting process under optimization of start-up transient processes is set forth as preferred examples. It will be apparent to those skilled in the art that modifications, including additions and/or substitutions maybe made without departing from the scope and spirit of the invention. Specific details may be omitted so as not to obscure the invention; however, the disclosure is written to enable one skilled in the art to practice the teachings herein without undue experimentation.

The trends of increasing wafer diameter and smaller lot sizes have led to more transient periods in wafer fabrication. For some wafer fabrication processes, such as atomic layer deposition (ALD), wafers need to visit some process modules for a number of times, instead of once, thus leading to a so-called revisiting process. Most previous studies on cluster tool scheduling focus on steady periodic cycle, in which cluster tools repeat identical cycles. Research on transient processes of dual-arm cluster tools with wafer revisiting processes becomes urgently needed for high-performance wafer fabrication. In order to speed up start-up transient processes, the present invention adopts a program evaluation and review technique for the analysis of start-up transient processes and develops optimization algorithms for their scheduling for dual-arm cluster tools. Then, their complexity is analyzed. Finally, illustrative examples are given to show the applications of the proposed method.

Section A briefly introduces the processes and one-wafer scheduling method. Section B develops start-up transient process scheduling and optimization algorithms. Section C presents illustrative examples.

A. REVISING PROCESS AND ONE-WAFER SCHEDULING METHOD

A.1 Atomic Layer Deposition Process

As for wafer fabrication, there are many operations for processing a wafer. If some operations require the same fabrication process as it visits its prior steps [Chan et al., 2011], it is called revisiting. If every operation of a wafer needs different fabrication processes, it is called non-revisiting. A revisiting process may contain only one step or more. A two-step revisiting process is typical and thus considered as an example in the present invention. For an ALD process, the thickness of the deposition layer is determined by the number of revisiting times. In an ALD process, there are three steps, and a wafer visits Step 1 once, and then Steps 2 and 3 for k≧2 times as shown in FIG. 2A, where k is determined by a process plan. One assumes that PM₁-PM₃ are configured for Steps 1-3, respectively. Then, one describes a wafer flow pattern of an ALD process as (PM₁, (PM₂, PM₃)^(k)) with (PM₂, PM₃)^(k) being a k-revisiting process. Without loss of generality and to make the present invention easy to follow, one assumes that k=2, i.e., (PM₁, (PM₂, PM₃)²).

A.2 Activity Description

There are several processing steps in a cluster tool for wafer fabrication. LLs can also be seen as a wafer processing step. Hence, one treats LLs as Step 0. According to [Shin et al., 2001], in operation of a cluster tool, PM activities follow the robot tasks. Thus, it is critically important to schedule robot activities. They include unloading a wafer from a PM, moving from a PM to another with a wafer carried, loading a wafer into a PM, moving from a PM to another without carrying a wafer, and waiting. The key in operating a cluster tool is to schedule the robot activities given the tool's status and process requirements. One uses u_(i) and l_(i) to denote the robot unloading and loading a wafer from P_(i), iεN₃={1, 2, 3}, respectively. As mentioned in Background, a swap strategy is efficient for scheduling dual-arm cluster tools. A swap operation at PM_(i) is executed as follows: the robot holds a wafer in one arm→unloads a processed wafer from a PM_(i) by the other arm→the robot rotates→loads a raw wafer into PM_(i). In this way, a swap operation at PM_(i) is completed. It follows from this process that l_(i) and u_(i) together with a rotation form a swap operation at Step i, iεN₃, and one uses s_(i) to denote it. One uses m_(ij) to denote the robot moving from Steps i to j. In the present invention, Steps 2 and 3 together form a revisiting process step. Therefore, m₃₂ represents the robot moving from Steps 3 to 2.

For the purpose of scheduling, the temporal characterization for each activity is necessary. The time for the robot to unload a wafer is denoted as α. Similarly, the time for the robot to load a wafer to a PM and move from a PM to another are denoted as β and μ, respectively. They are listed in Table 2.1. Although a swap operation includes unloading and loading a wafer, the time of a swap operation is not simply their sum. One uses λ to denote the time. Besides the robot activities, one uses a_(i) to denote the wafer processing time at Step i, iεN₃.

TABLE 2.1 The meanings of the denotations Notations Robot Tasks Time u_(i) Unloading a wafer from α Step i l_(i) Loading a wafer into β Step i m_(ij) Moving from Steps i to j μ s_(i) Swapping at Step i λ

A.3. One Wafer Scheduling Strategy

One first presents how to obtain an optimal periodic schedule for the k=2 case. One defines m_(ij) for the robot moving from PM_(i) to PM_(j). l₀ and u₀ are defined to load a wafer to LL and unload a wafer from LL for the robot, respectively. If the robot executes tasks in the revisiting process (PM₂, PM₃)² with a sequence σ₁=

swapping at PM₃→m₃₂→swapping at PM₂→m₂₃

that forms a cycle, one calls it a local cycle. If a robot executes tasks with a sequence σ₂=

swapping at PM₃→m₃₀→l₀→u₀→m₀₁→swapping at PM₁→m₁₂→swapping at PM₂→m₂₃

that forms a cycle involving all PMs once, one calls it a global cycle. One-wafer schedule should contain one local and one global cycle as shown in FIG. 2B. It must be optimal in the sense of cycle time according to [Qiao et al., 2013]. Let M={Γ₁, Γ₂, Γ₃, Γ₄} denote the state of the system, where Γ_(i)={W_(d)(q)}, iεN₃={1, 2, 3}, with W_(d)(q) being the d-th wafer released to the system with its q-th operation being processed in PM_(i) (Step i). Γ₄={R_(j)(W_(d)(q)} represents the d-th wafer that is held by the robot with its q-th operation to be processed at Step j, jεN₃. What is the first desired state to guarantee such an optimal one-wafer steady-state schedule? The answer is that the tool starts from the state M_(i)={W₃(1), W₁(4), W₂(3), R₁(W₄(1))} according to [Qiao et al., 2013], which is called the first desired steady state. It represents that the 3rd, 1st and 2nd wafers are being processed in PM₁, PM₂, and PM₃ for their 1st, 4th, and 3rd operations, respectively. At the same time, the robot holds the 4-th wafer with the 1st operation to be processed at Step 1. At this state, by executing σ₃=

swapping at PM₁→m₁₂→swapping at PM₂→m₂₃

, the system state becomes M_(i+1)={W₄(1), W₃(2), W₂(3), R₃(W₁(5))}. By executing σ₁, it becomes M_(i+2)={W₄(1), W₂(4), W₁(5), R₃(W₃(3))}. Finally, by executing σ₄=

swapping at PM₃→m₃₀→l₀→u₀→m₀₁

, M_(i+3)={W₄(1), W₂(4), W₃(3), R₁(W₅(1))} is obtained. One can find that σ₃ and σ₄ together form a global cycle. In the meantime, M_(i) and M_(i+3) are equivalent. Therefore, a period including a local and a global cycle is formed. During this period, one wafer is unloaded from LL, while another is completed and returns to LL.

Next, one analyzes how the system can optimally enter the first desired steady state from the initial state.

B. START-UP TRANSIENT PROCESS SCHEDULING

Qiao et al. [2013] show that a one-wafer cyclic schedule is optimal for a dual-arm cluster tool with wafer revisiting in terms of cycle time. The first desired state M_(i)={W₃(1), W₁(4), W₂(3), R₁(W₄(1))} in such a cyclic schedule. Thus, the question to be answered is how to reach it from initial state M₀={Θ, Θ, Θ, R₀(Θ)} in the fastest way, where Θ means the robot arm is empty and ready for unloading a wafer from LL. To do so, one develops the following method.

Let ω_(i) ^(f) denote waiting time for the robot to unload a wafer from a PM_(i) during the period from states M_(j-1) to M_(j), j>0. At the initial state, there are no wafers being processed in PMs. Then, to reach M₁={W₁(1), Θ, Θ, R₁(Θ)}, the robot performs a sequence

unloading a wafer W₁ from LL (u₀), moving to PM₁ (m₀₁), and loading the wafer to PM₁ (l₁)

. To reach M₂={W₂(1), W₁(2), Θ, R₂(Θ)}, it performs

moving to LL (m₁₀), unloading a wafer W₂ from LL (u₀), moving to PM₁ (m₀₁), waiting at PM₁ (ω₁ ²), swapping at PM₁, moving to PM₂ (m₁₂), and loading wafer W₁ to PM₂ (l₂)

. To reach M₃={W₃(1), W₂(2), W₁(3), R₃(Θ)}, the robot performs

moving to LL (m₂₀), unloading the wafer W₃ from LL (u₀), moving to PM₁ (m₀₁), waiting at PM₁ (ω₁ ³), swapping at PM₁, moving to PM₂ (m₁₂), waiting at PM₂ (ω₂ ³), swapping at PM₂, moving to PM₃ (m₂₃), and loading the wafer W₁ into PM₃ (l₃)

. Based on the above robot task sequence, one can obtain a program evaluation and review technique (PERT) chart shown in FIG. 3A. As for Nodes 1, 2, 4 and 7, the system states are M₀, M₁, M₂ and M₃, respectively. Note that, from Node 2 to Node 2F, two concurrent sequences of operations must be finished, they are 1) robot tasks from PM₁ to LL and LL to PM₁ and 2) processing a wafer W₁(1). From Node 3 to Node 3F, two concurrent sequences of operations must be finished, 1) robot tasks from PM₁ to PM₂, PM₂ to LL, and LL to PM₁ and 2) processing a wafer W₂(1). From Node 4 to Node 4F, two concurrent sequences of operations must be finished, 1) robot tasks from PM₂ to LL, LL to PM₁, and PM₁ to PM₂ and 2) processing a wafer W₁(2).

To promptly reach the first desired steady state, according to the process time difference between PM₂ and PM₃, there are two cases. For Case 1, the system evolves as shown in FIG. 3B and states are as follows:

To reach M₄₁={W₃(1), W₁(4), W₂(3), R₃(Θ)} at Node 9, the robot performs

staying at PM₃ (ω₃ ⁴), unloading wafer W₁(3) from PM₃ (u₃), moving to PM₂ (m₃₂), waiting at PM₂ (ω₂ ⁴), swapping at PM₂, moving to PM₃ (m₂₃), and loading wafer W₂(3) into PM₃ (l₃)

;

To reach M₅₁={W₃(1), W₁(4), W₂(3), R₁(W₄(1))} at Node 5F, the robot performs

moving to LL (m₃₀), unloading wafer W₄(1) from LL (u₀), moving to PM₁ (m₀₁), and waiting at PM₁ (ω₁ ⁵)

;

To reach M₆₁={W₄(1), W₃(2), W₂(3), R₃(W₁(5))} at Node 9F, the robot performs

swapping at PM₁, moving to PM₂ (m₁₂), waiting at PM₂ (ω₂ ⁶), swapping at PM₂, moves to PM₃ (m₂₃), and waiting at PM₃ (ω₃ ⁶)

;

To reach M₇₁={W₄(1), W₂(4), W₁(5), R₃(W₃(3))} at Node 11F, the robot performs

swapping at PM₃, moving to PM₂ (m₃₂), waiting at PM₂ (ω₂ ⁷), swapping at PM₂, moving to PM₃ (m₂₃), and waiting at PM₃ (ω₃ ⁷)

;

To reach M₈₁={W₄(1), W₂(4), W₃(3), R₁(W₅(1))} at Node 12, the robot performs

swapping at PM₃, moving to LL (m₃₀), loading wafer W₁ to LL (l₀), unloading wafer W₅ from LL (u₀), moving to PM₁ (m₀₁), and waiting at PM₁ (ω₁ ⁸)

.

For Case 2, the system evolves as shown in FIG. 3C and its states are as follows:

To reach M₄₂={W₃(1), W₁(4), W₂(3), R₂(Θ)} at Node 9, the robot performs

moving to PM₂ (m₃₂), waiting at PM₂ (ω₂ ⁴), unloading wafer W₂ from PM₂ (u₂), moving to PM₃ (m₂₃), waiting at PM₃ (ω₃ ⁴), swapping at PM₃, moving to PM₂ (m₃₂), and loading wafer W₁ to PM₂ (l₂)

;

To reach M₅₂={W₃(1), W₁(4), W₂(3), R₁(W₄(1))} at Node 5F, the robot performs

moving to LL (m₂₀), unloading wafer W₄ from LL (u₀), moving to PM₁ (m₀₁), and waiting at PM₁ (ω₁ ⁵)

;

To reach M₆₂={W₄(1), W₃(2), W₂(3), R₃(W₁(5))} at Node 8F, the robot performs

swapping at PM₁, moving to PM₂ (m₁₂), waiting at PM₂ (ω₂ ⁶), swapping at PM₂, moving to PM₃ (m₂₃), and waiting at PM₃ (ω₃ ⁶)

;

To reach M₇₂={W₄(1), W₂(4), W₁(5), R₃(W₃(3))} at Node 11F, the robot performs

swapping at PM₃, moving to PM₂ (m₃₂), waiting at PM₂ (ω₂ ⁷), swapping at PM₂, moving to PM₃ (m₂₃), and waiting at PM₃ (ω₃ ⁷)

;

To reach M₈₂={W₄(1), W₂(4), W₃(3), R₁(W₅(1))} at Node 12, the robot performs

swapping at PM₃, moving to LL (m₃₀), loading wafer W₁ to LL (l₀), unloading wafer W₅ from LL (u₀), moving to PM₁ (m₀₁), and waiting at PM₁ (ω₁ ⁸)

.

Let Γ_(k) denote the time from an initial state at Node 1 to a terminal state at Node k. Thus, to obtain the shortest feasible path Γ_(k), the key is to search a critical path in the PERT charts shown in FIGS. 3B and 3C. One adopts the following algorithm to calculate Γ_(k).

Algorithm 1: If a dual-arm cluster tool with wafer revisiting operates as shown in FIG. 3B from the initial state to the steady state, the minimal time Γ₁₃ is computed as follow.

-   1) Γ₂=α+μ+β; -   2) Γ_(2F)=Γ₂+max{a₁, (2μ+α)}; -   3) Γ₃=Γ_(2F)+λ; -   4) Γ₄=Γ₃+μ+β; -   5) Γ_(3F)=max{(Γ₃+a₁), (Γ₄+2μ+α)}; -   6) Γ₅=Γ_(3F)+λ; -   7) Γ_(4F)=max{(Γ₄+a₂), (Γ_(3F)+λ+μ)}; -   8) Γ₆=Γ_(4F)+λ; -   9) Γ₇=Γ₆+μ+β; -   10) Γ_(7F)=Γ₇+a₃; -   11) Γ_(6F)=max{(Γ_(7F)+α+μ), (Γ₆+a₂)}; -   12) Γ₈=Γ_(6F)+λ; -   13) Γ₉=Γ₈+μ+β; -   14) Γ_(5F)=max{(Γ₉+2μ+α), (Γ₅+a₁)}; -   15) Γ_(8F)=max{(Γ_(5F)+μ+λ), (Γ₈+a₂)}; -   16) Γ₁₀=Γ_(8F)+λ; -   17) Γ_(9F)=max{(Γ₁₀+μ), (Γ₉+a₃)}; -   18) Γ₁₁=Γ_(9F)+λ; -   19) Γ_(10F)=max{(Γ₁₁+μ), (Γ₁₀+a₂)}; -   20) Γ_(11F)=max{(Γ_(10F)+λ+μ), (Γ₁₁+a₃)}; -   21) Γ₁₂=max{(Γ_(5F)+λ+a₁), (Γ_(11F)+λ+2μ+α+β)}; -   22) Γ₁₃=Γ₁₂+λ; -   23) Stop;

At the initial state, the cluster tool is empty. Then, one shows how Algorithm 1 is obtained. From the PERT chart in FIG. 3B for Case 1, one knows:

To reach the state at Node 2 from Node 1 takes Γ₂=α+μ+β time units at least.

To reach Node 2F from Node 2, there are two sequences of operations that must be finished. One takes a₁ time units to finish the process, and the other takes 2μ+α time units to finish transportation. Hence, the time needed to reach Node 2F is max{a₁, (2μ+α)} and Statement 2 holds.

To reach Node 3 takes at least Γ_(2F)+λ time units and Statements 3 holds.

To reach Node 4 takes Γ₃+μ+β time units and Statement 4 hold.

To reach Node 3F, there are two sequences to complete. One takes Γ₃+a₁ time units to finish the process from Node 3, and the other takes Γ₄+2μ+α time units to finish transportation. Hence, the time needed to reach Node 3F is max{(Γ₃+a₁), (Γ₄+2μ+α)} and Statement 5 holds.

To reach Node 5 takes at least Γ_(3F)+λ time units. Thus, Statement 6 holds.

To reach Node 4F, it has two sequences to complete. One takes Γ₄+a₂ time units to finish the process from Node 4, and the other takes Γ_(3F)+λ+μ time units to finish transportation. Hence, the time needed to reach Node 4F is max{(Γ₃+a₁), (Γ₄+2μ+α)} and Statement 7 holds.

To reach Nodes 6, 7, and 7F takes at least Γ_(4F)+λ, Γ₆+μ+β and Γ₇+a₃ time units, respectively. Thus, Statements 8-10 hold.

To reach Node 6F, it has two sequences to complete. One takes Γ_(7F)+α+μ time units to finish transportation, and the other takes Γ₆+a₂ time units to finish the process. Hence, the time needed to reach Node 6F is max {(Γ_(7F)+α+μ), (Γ₆+a₂)} and Statement 11 holds.

To reach Nodes 8 and 9 takes σ_(6F)+λ and Γ₈+μ+β time units, respectively. Thus, Statements 12 and 13 hold.

To reach Node 5F, it has two sequences to complete. One takes Γ₉+2μ+α time units to finish transportation, and the other takes Γ₅+a₁ time units to finish the process from Node 5. Hence, the time needed to reach Node 5F is max{(Γ₉+2μ+α), (Γ₅+a₁)} time units and Statement 14 holds.

To reach Node 8F, it has two sequences to complete. One takes Γ_(5F)+μ+λ time units to finish transportation, and the other takes Γ₈+a₂ time units to finish the process from Node 8. Hence, the time needed to reach Node 8F is max {(Γ_(5F)+μ+λ), (Γ₈+a₂)} time units and Statement 15 holds.

To reach Node 10 takes at least Γ_(8F)+λ time units and Statement 16 holds.

To reach Node 9F, it has two sequences to complete. One takes Γ₁₀+μ time units to finish transportation, and the other takes Γ₉+a₃ time units to finish the process. Hence, the time needed to reach Node 9F is max{(Γ₁₀+μ), (Γ₉+a₃)} time units and Statement 17 holds.

To reach Node 11 takes at least Γ_(9F)+λ time units and Statement 18 holds.

To reach Node 10F, it has two sequences to complete. One takes Γ₁₁+μ time units to finish transportation, and the other takes Γ₁₀+a₂ time units to finish the process from Node 10. Hence, the time needed to reach Node 10F is max{(Γ₁₁+μ), (Γ₁₀+a₂)} time units and Statement 19 holds.

To reach Node 11F, it has two sequences to complete. One takes Γ_(10F)+λ+μ time units to finish transportation, and the other takes Γ₁₁+a₃ time units to finish the process from Node 11. Hence, the time from Nodes 11 to 11F is max{(Γ_(10F)+λ+μ), (Γ₁₁+a₃)} time units and Statement 20 holds.

To reach Node 12, one sequence takes (Γ_(11F)+λ+2μ+α+β) time units to finish transportation, and the other takes (Γ_(5F)+λ+a₁) time units to finish the process. Hence, the time needed to reach Node 12 is max{(Γ_(5F)+λ+a₁), (Γ_(11F)+λ+2μ+α+β)} time units and Statement 21 holds.

To reach Node 13 takes Γ₁₂+λ time units.

A critical path from Node 1 to Node 13 could be found by Algorithm 1. So for Case 1, the time Γ₁₃ is shortest time by Algorithm 1 for a dual-cluster tool to reach the first desired steady state from the initial state.

Algorithm 2: If a dual-arm cluster tool with wafer revisiting operates as shown in FIG. 3C from the initial state, the minimal time Γ₁₃ could be obtained as follow.

-   1) Γ₂=α+μ+β; -   2) Γ_(2F)=Γ₂+max{a₁, (2μ+α)}; -   3) Γ₃=Γ_(2F)+λ; -   4) Γ₄=Γ₃+μ+β; -   5) Γ_(3F)=max{(Γ₃+a₁), (Γ₄+2μ+α)}; -   6) Γ₅=Γ_(3F)+λ; -   7) Γ_(4F)=max{(Γ₄+a₂), (Γ_(3F)+λ+μ)}; -   8) Γ₆=Γ_(4F)+λ; -   9) Γ₇=Γ₆+μ+β; -   10) Γ_(6F)=max {(Γ₆+a₂), (Γ₇+μ)}; -   11) Γ_(7F)=max{(Γ₇+a₃), (Γ_(6F)+μ+α)}; -   12) Γ₈=Γ_(7F)+λ; -   13) Γ₉=Γ₈+μ+β; -   14) Γ_(5F)=max{(Γ₅+a₁), (Γ₉+2μ+α)}; -   15) Γ_(9F)=max{(Γ₉+a₂), (Γ_(5F)+μ+λ)}; -   16) Γ₁₀=Γ_(9F)+λ; -   17) Γ_(8F)=max{(Γ₈+a₃), (Γ₁₀+μ)}; -   18) Γ₁₁=Γ_(8F)+λ; -   19) Γ_(10F)=max{(Γ₁₀+a₂), (Γ₁₁+μ)}; -   20) Γ_(11F)=max{(Γ₁₁+a₃), (Γ_(10F)+μ+λ)}; -   21) Γ₁₂=max{(Γ_(5F)+λ+a₁), (Γ_(11F)+λ+2μ+α+β)}; -   22) Γ₁₃=Γ₁₂+λ; -   23) Stop;

Similar to Algorithm 1, a critical path from Node 1 to Node 13 could be found by Algorithm 2 for Case 2. Thus, Γ₁₃ obtained by Algorithm 2 represents the shortest time for the cluster tool to reach the first desired steady state at Node 13 from the initial state.

Up to now, one knows that the transient process obtained by Algorithms 1 and 2 from the initial state to the state at Node 13 is the shortest time for Cases 1 and 2, respectively. Then, if the cycle time of the cluster tool is a constant and optimal in the following evolutions, by simulation results of Algorithm 1 and 2, one can know that which scheduling method is better than traditional method which adopts the concept of virtual wafers [Wu et al., 2013b]. Observing the processes of M₅₁ to M₆₁ and M₅₂ to M₆₂, M₆₁ to M₇₁ and M₆₂ to M₇₂, and M₇₁ to M₈₁ and M₇₂ to M₈₂, the robot activities for transforming the state from M_(i1) to M_((i+1)1) are same as the one for M_(i2) to M_((i+1)2), iε{5, 6, 7}. Thus, one uses M_(i) to denote states M_(i1) and M_(i2), iε{5, 6, 7}. Then, after state M₈, the following evolutions of the cluster tool is shown.

From M_(8+3i) to M_(9+3i)={W_((5+i))(1), W_((4+i))(2), W_((3+i))(3), R₃(W_((2+i))(5))}, i≧0, the robot performs a sequence of robot activities:

swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i)), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ^(9+3i))

;

From M_(9+3i) to M_(10+3i)={W_((5+i))(1), W_((3+i))(4), W_((2+i))(5), R₃(W_((4+i))(3))}, i≧0, the robot performs a sequence of robot activities:

swaps at PM₃, moves to PM₂ (m₃₂), waits at PM₂ (ω₂ ^(10+3i)), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ^(10+3i))

;

From M_(10+3i) to M_(11+3i)={W_((5+i))(1), W_((3+i))(4), W_((4+i))(3), R₁(W_((6+i))(1))}, i≧0, the robot performs a sequence of robot activities:

swaps at PM₃, moves to LL (m₃₀), loads W_((2+i)) into LL (l₀), unloads W_((6+i)) from LL (u₀), moves to PM₁ (m₀₁), and waits at PM₁ (ω₁ ^(11+3i))

.

When a wafer is processed, it is unloaded by the robot. It takes a_(i) time units at Step i to process the wafer and λ time units to swap, iεN₃. Let Π_(i)=a_(i)+λ denote the time needed for completing a wafer at Step i, and Π_(local)=max{Π₂, Π₃}. Let φ₁ denote the local robot cycle time without considering the robot waiting time. Then φ₁=2μ+2λ. Let θ_(ij), j>i≧0, denote the robot task sequence which transfers M_(i) to M_(j) and Π_(ij) denote the time taken by θ_(ij). Then, one has the following theorem.

Theorem 1: For a dual-arm cluster tool with wafer revisiting with the start-up transient process scheduled by Algorithms 1 or 2, if Π₁≦Π_(local)+ψ₁, then ω₁ ^(8+3i)=0 must hold, i≧0.

Proof: Case 1: The start-up transient process is scheduled by Algorithm 1. Observe the robot task sequence θ₁ during the period from M₅ to M₇, where θ₁=

swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ⁶), swaps at PM₃, moves to PM₂ (m₃₂), waits at PM₂ (ω₂ ⁷), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ⁷)

. The earliest strategy implies that the robot task time taken by θ₁ must be greater than Π₂+λ+μ or Π₃+λ+μ. Therefore, the time needed for θ₁ must be greater than Π_(local)+λ+μ time units. Thus, the robot task sequence θ₅₈=

swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ⁶), robot task sequence θ₁, swaps at PM₃, moves to LL (m₃₀), loads W₁ into LL (l₀), unloads W₅ from LL (u₀), moves to PM₁ (m₀₁), and waits at PM₁ (ω₁ ⁸)

must take Π_(local)+3λ+4μ+α+β=Π_(local)+ψ₁ time units at least because θ₁ must take Π_(local)+λ+μ time units at least. Then, by the assumption of Π₁≦Π_(local)+ψ₁, when the system reaches marking M₉ for swapping at p₁, ω₁ ⁸=0 must hold. Similarly, one can prove that ω₁ ^(8+3i)=0, i≧0.

Case 1: The start-up transient process is scheduled by Algorithm 2. Similar to Case 1, one can have ω₁ ^(8+3i)=0, i≧0.

Hence, the conclusion holds.

From Theorem 1, it shows that the time needed for the robot task sequence θ₁ must be greater than Π_(local)+λ+μ time units. θ₁ consists of a local cycle, a swapping operation, and a robot moving activity. Thus, one has that the local cycle takes Π_(local) time units at least. With the start-up transient process scheduled by Algorithms 1 or 2, when the system reaches marking M_(8+3i), the robot would swap at PM₁ for unloading a wafer which is completed in PM₁. Notice that this wafer has stayed in PM₁ for a whole period including a global cycle and a local one. Because the global cycle without the robot waiting time being considered takes ψ₁ time units, this wafer must stay in PM₁ for Π_(local)+ψ₁ time units at least. With the assumption of Π₁≦Π_(local)+ψ₁, one can easily know that, when the robot arrives at PM₁ for unloading this wafer, it must be completed. Therefore, no waiting is needed before swapping at PM₁. Then, based on Theorem 1, one can have the following theorem.

Theorem 2: For a dual-arm cluster tool handling an ALD process, for the following operations of the system after the robot performs all the tasks before Node 13 shown in FIGS. 3B or 3C, if Π₁≦Π_(local)+ψ₁, then the cycle time of the system is a constant, i.e.,

$\begin{matrix} {\Pi_{{({8 + {3\; i}})}{({11 + {3\; i}})}} = \;\left\{ \begin{matrix} {{2\Pi_{local}},{{{if}\mspace{14mu}\Pi_{local}} \geq \;\psi_{1}}} \\ {{\Pi_{local} + \psi_{1}},{{{if}\mspace{14mu}\psi_{1}} > \Pi_{local} \geq \varphi_{1}}} \\ {{\psi_{1} + \varphi_{1}},{{{if}\mspace{14mu}\varphi_{1}} > \Pi_{local}}} \end{matrix} \right.} & (1) \end{matrix}$

Proof: One has the following five situations. Situation 1: Π₃≧Π₂ and Π₃≧ψ₁. From the robot task sequence θ_((6+3i)(9+3i))=

swaps at PM₃, moves to PM₂ (m₃₂), waits at PM₂ (ω₂ ^(7+3i)), swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ^(7+3i)), swaps at PM₃, moves to LL (m₃₀), loads a completed wafer into LL (l₀), unloads a row wafer from LL (u₀), moves to PM₁ (m₀₁), waits at PM₁ (ω₁ ^(8+3i)), swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i)), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ^(9+3i))

, i≧0, one has ω₃ ^(7+3i)≦Π₃−φ₁ because Π₃≧ψ₁>φ₁. In θ_((6+3i)(9+3i)), i≧0, for the robot task sequence θ₂=

swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ^(7+3i)), swaps at PM₃, moves to LL (m₃₀), loads a completed wafer into LL (l₀), unloads a raw wafer from LL (u₀), moves to PM₁ (m₀₁), waits at PM₁ (ω₁ ^(8+3i)), swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i))

, it takes ψ₁+ω₃ ^(7+3i)+ω₂ ^(9+3i) time units. Thus, if ψ₁+ω₃ ^(7+3i)≧Π₂, one has ω₂ ^(9+3i)=0, and otherwise, ω₂ ^(9+3i)=Π₂−(ψ₁+ω₃ ^(7+3i)). From θ_((7+3i)(9+3i))=

swaps at PM₃, moves to LL (m₃₀), loads a completed wafer into LL (l₀), unloads a raw wafer from LL (u₀), moves to PM₁ (m₀₁), waits at PM₁ (ω₁ ^(8+3i)), swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i)), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ^(9+3i))

, i≧0, if ω₂ ^(9+3i)=0, one has ω₂ ^(9+3i)+ω₃ ^(9+3i)=Π₃−ψ₁ because Π₃≧ψ₁, and if ω₂ ^(9+3i)=Π₂−(ψ₁+ω₃ ^(7+3i))>0, one also has ω₂ ^(9+3i)+ω₃ ^(9+3i)=Π₃−ψ₁ because 0<ω₂ ^(9+3i)=Π₂−(ψ₁+ω₃ ^(7+3i))≦Π₂−ψ₁≦Π₃−ψ₁. From θ_((8+3i)(10+3i))=

swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i)), swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ^(9+3i)), swaps at PM₃, moves to PM₂ (m₃₂), waits at PM₂ (ω₂ ^(10+3i)), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ^(10+3i))

, i≧0, one has ω₂ ^(10+3i)=max{Π₂−φ₁−ω₃ ^(9+3i), 0}. If ω₂ ^(10+3i)=0, one has ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₃−φ₁. If ω₂ ^(10+3i)=Π₂−φ₁−ω₃ ^(9+3i), one also has ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₃−φ₁ because ω₂ ^(10+3i)=Π₂−φ₁−ω₃ ^(9+3i)≦Π₂−φ₁≦Π₃−φ₁. Thus, the robot task sequence θ_((8+3i)(11+3i)), i≧0 takes ψ₁+φ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)=ψ₁+φ₁+Π₃−ψ₁+Π₃−φ₁=2Π₃ time units.

Situation 2: Π₂>Π₃ and Π₂≧ψ₁. Similar to Situation 1, one has ω₂ ^(9+3i)+ω₃ ^(9+3i)=Π₂−ψ₁ and ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₂−φ₁. Thus, the robot task sequence θ_((8+3i)(11+3i)), i≧0, takes ψ₁+φ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)=2Π₂ time units.

Situation 3: Π₃≧Π₂ and ψ₁>Π₃≧φ₁. Similar to Situation 1, one has ω₂ ^(9+3i)+ω₃ ^(9+3i)=0 and ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₃−φ₁. Thus, the robot task sequence θ_((8+3i)(11+3i)), i≧0, takes ψ₁+φ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₃+ψ₁ time units.

Situation 4: Π₂>Π₃ and ψ₁>Π₂≧φ₁. Similar to Situation 1, one has ω₂ ^(9+3i)+ω₃ ^(9+3i)=0 and ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₂−φ₁. Thus, the robot task sequence θ_((8+3i)(11+3i)), i≧0, takes ψ₁+φ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₂+ψ₁ time units.

Situation 5: φ₁>Π_(local). One can easily have that ω₂ ^(9+3i)+ω₃ ^(9+3i)=0 and ω₂ ^(10+3i)+ω₃ ^(10+3i)=0. Thus, the robot task sequence θ_((8+3i)(11+3i)), i≧0, takes ψ₁+φ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)=ψ₁+φ₁ time units.

Therefore, the conclusion holds.

By Theorem 2, if Π_(local)≧ψ₁ or Π_(local)≧φ₁, the system operates in the process-bound region for the local cycle. Thus, the local cycle takes Π_(local) time units. If Π_(local)<φ₁, the system operates in the transport-bound region for the local cycle. For this situation, the local cycle takes φ₁ time units. Then, if Π_(local)≧ψ₁, the system operates in the process-bound for the global cycle which takes Π_(local) time units. If Π_(local)<ψ₁, the system operates in the transport-bound for the global cycle which takes ψ₁ time units. Therefore, expression (1) can hold. The following theorem is for another case.

Theorem 3: For a dual-arm cluster tool handling an ALD process, for the following operations of the system after the robot performs all the tasks before Node 12 (except robot waiting ω₁ ⁸) shown in FIGS. 3B or 3C, if 2Π_(local)≧Π₁>Π_(local)ψ₁ and Π_(local)≧ψ₁, then the cycle time of the system is 2Π_(local) time units.

Proof: One has two situations only. Situation 1: Π₃≧Π₂. It follows from Situation 1 in Theorem 2 that one has ω₃ ^(7+3i)≦Π₃−φ₁. Then, in θ_((6+3i)(9+3i)), i≧0, for the robot task sequence θ₃=

swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ^(7+3i)), swaps at PM₃, moves to LL (m₃₀), loads a completed wafer into LL (l₀), unloads a raw wafer from LL (u₀), moves to PM₁ (m₀₁), waits at PM₁ (ω₁ ^(8+3i)), swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i))

, it takes ψ₁+ω₃ ^(7+3i)+ω₂ ^(9+3i)+ω₁ ^(8+3i) time units. Thus if, ψ₁+ω₃ ^(7+3i)+ω₁ ^(8+3i)≧Π₂, one has ω₂ ^(9+3i)=0, otherwise ω₂ ^(9+3i) 32 Π₂−(ψ₁+ω₃ ^(7+3i)+ω₁ ^(8+3i)). Observing θ_((7+3i)(9+3i))=

swaps at PM₃, moves to LL (m₃₀), loads a completed wafer into LL (l₀), unloads a raw wafer from LL (u₀), moves to PM₁ (m₀₁), waits at PM₁ (ω₁ ^(8+3i)), swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i)), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ^(9+3i))

, i≧0, if ω₂ ^(9+3i)=0, one has ω₁ ^(8+3i)+ω₂ ^(9+3i)+ω₃ ^(9+3i)=Π₃−ψ₁ because of ω₁ ^(8+3i)≦Π₁−(Π_(local)+ψ₁) and 2Π_(local)≧Π₁ leading to ω₁ ^(8+3i)+ψ₁≦Π₁−(Π₃+ψ₁)+ψ₁=Π₁−Π₃≦Π₃. If ω₂ ^(9+3i)=Π₂−(ψ₁+ω₃ ^(7+3i)+ω₁ ^(8+3i))>0, one also has ω₁ ^(8+3i)+ω₂ ^(9+3i)+ω₃ ^(9+3i)=Π₃−ψ₁ because of 0<ω₂ ^(9+3i)=Π₂−(ψ₁+ω₃ ^(7+3i)+ω₁ ^(8+3i))≦Π₂−ψ₁≦Π₃−ψ₁. Then, based on Situation 1 in Theorem 2, one has ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₃−φ₁. Observing the robot task sequence θ_((7+3i)(11+3i)), i≧0, one sets a robot task sequence σ_(8+3i)=

waits at PM₁ (ω₁ ^(8+3i)), swaps at PM₁, moves to PM₂ (m₁₂), waits at PM₂ (ω₂ ^(9+3i)), swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ^(9+3i)), swaps at PM₃, moves to PM₂ (m₃₂), waits at PM₂ (ω₂ ^(10+3i)), swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ^(10+3i)), swaps at PM₃, moves to LL (m₃₀), loads a completed wafer into LL (l₀), unloads a raw wafer from LL (u₀), and moves to PM₁ (m₀₁)

, i≧0. Thus, the robot task sequence σ_(8+3i) takes ψ₁+φ₁+ω₁ ^(8+3i)+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)=ψ₁+φ₁+Π₃−ψ₁+Π₃−φ₁=2Π₃ time units.

Situation 2: Π₂>Π₃. Similar to Situation 1, one has ω₁ ^(8+3i)+ω₂ ^(9+3i)+ω₃ ^(9+3i)=Π₂−ψ₁ and ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π₂−φ₁. Thus, the robot task sequence σ_(8+3i), i≧0, takes ψ₁+φ₁+ω₁ ^(8+3i)+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)=2Π₃ time units.

Therefore, the conclusion holds.

For this case, since Π_(local)≧ψ₁, one has that the system operates in the process-bound region for both the local and global cycles. With the assumption that 2Π_(local)≧Π₁, the local and global cycles take 2Π_(local) time units. However, if Π₁>2Π_(local) and Π_(local)≧ψ₁, one has the following result.

Theorem 4: For a dual-arm cluster tool for an ALD process, for the following operations of the system after the robot performs all the tasks before Node 13 shown in FIGS. 3B or 3C, if Π₁>2Π_(local) and Π_(local)≧ψ₁, then the cycle time of the system is Π₁ time units.

Proof: It is assumed that a robot task sequence θ_((8+3i)(11+3i)), i≧0, takes η₁ time units and η₁<Π₁ holds. However, during the period of M_(8+3i) to M_(11+3i), i≧0, there is a wafer staying at PM₁. After performing θ_((8+3i)(11+3i)), the robot needs to swap at PM₁ for unloading the wafer. With the assumption of η₁<Π₁, if the robot unloads the wafer, this wafer must be not completed. Therefore, one has η₁≧Π₁.

It is assumed that there exists a robot task sequence θ_((8+3i)(11+3i)) which takes η₁ time units and η₁>Π₁ holds. With the earliest strategy, ω₁ ^(8+3i)=0 because that, if ω₁ ^(8+3i)>0, the wafer staying at PM₁ during θ_((8+3i)(11+3i)) must just be completed such that θ_((8+3i)(11+3i)) takes Π₁ time units leading to a conflict with the assumption of η₁>Π₁. Then, there are two situations only.

Situation 1: Π₃≧Π₂. In θ_((8+3i)(10+3i)), there is a robot task sequence θ₄=

swaps at PM₂, moves to PM₃ (m₂₃), waits at PM₃ (ω₃ ^(9+3i)), swaps at PM₃, moves to PM₂ (m₃₂), waits at PM₂ (ω₂ ^(10+3i)), swaps at PM₂, moves to PM₃ (m₂₃), and waits at PM₃ (ω₃ ^(10+3i))

. If ω₃ ^(9+3i)=0, with the earliest strategy, one has ω₂ ^(10+3i)=max{Π₂−φ₁, 0} holds. This means that 0≦ω₃ ^(10+3i)=Π₃−φ₁−ω₂ ^(10+3i) holds because of Π₃−φ₁≧max{Π₂−φ₁, 0}. Therefore, θ₄ takes Π₃+λ+μ+ω₃ ^(9+3i) time units, where ω₃ ^(9+3i)=0. If ω₃ ^(9+3i)>0, with the earliest strategy, one has ω₂ ^(10+3i)<max{Π₂−φ₁, 0} holds. This means that 0≦ω₃ ^(10+3i)=Π₃−φ₁−ω₂ ^(10+3i) holds because of Π₃−φ₁≧max{Π₂−φ₁, 0}. Therefore, θ₄ takes Π₃+λ+μ+ω₃ ^(9+3i) time units, where ω₃ ^(9+3i)>0. Thus, one has that the robot task sequence θ_((8+3i)(11+3i)) takes η₁=5λ+6μ+α+β+ω₂ ^(9+3i)+ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)+ω₁ ^(11+3i)=Π₃+ψ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i) time units. With the assumption of η₁>Π₁, one has ω₂ ^(9+3i)+ω₃ ^(9+3i)>0 because of Π₃+ψ₁<Π₁. If ω₃ ^(9+3i)>0, with the earliest strategy and the robot task sequence θ_((7+3i)(9+3i)), it means that ω₂ ^(9+3i)+ω₃ ^(9+3i)≦Π₃−ψ₁. This makes that η₁=Π₃+ψ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i)≦2Π₃<Π₁ which leads a conflict with the assumption of η₁>Π₁. If ω₃ ^(9+3i)=0 and ω₂ ^(9+3i)>0, with the earliest strategy and the robot task sequence θ_((6+3i)(9+3i)), it means that ω₂ ^(9+3i)≦Π₂−ψ₁ and Π₂>ψ₁ must hold. At this time, η₁=Π₃+ψ₁+ω₂ ^(9+3i)+ω₃ ^(9+3i)≦Π₃+Π₂≦2Π₃<Π₁ which leads a conflict with the assumption of η₁>Π₁. Therefore, one has η₁≦Π₁ should hold. From above analysis, one knows that η₁≧Π₁ should hold. Thus, η₁=Π₁ holds.

Situation 2: Π₃<Π₂. Similar to Situation 1, one can easily have η₁=Π₁.

Hence, the conclusion holds.

It is known that the wafer in PM₁ should stay for a whole period including a local cycle and a global one. Since Π₁>2Π_(local), the wafer in PM₁ should stay for Π₁ time units at least. Therefore, the whole period takes Π₁ time units, or Theorem 4 holds. When Π₁>Π_(local)+ψ₁ and Π_(local)<ψ₁, one has the following theorem.

Theorem 5: For a dual-arm cluster tool handling an ALD process, for the following operations of the system after the robot performs all the tasks before Node 13 shown in FIG. 3B or 3C, if Π₁>Π_(local)+ψ₁ and φ₁≦Π_(local)<ψ₁, then the cycle time of the system is Π₁ time units.

Proof: By Π_(local)<ψ₁, one can easily have ω₂ ^(9+3i)+ω₃ ^(9+3i)=0, i≧0. Then, based on theorems 1-3, one has ω₂ ^(10+3i)+ω₃ ^(10+3i)=Π_(local)−φ₁, i≧0. Thus, for the robot task sequence θ_((8+3i)(11+3i)), i≧0, it takes ψ₁+φ₁+ω₂ ^(9+3i)ω₃ ^(9+3i)+ω₂ ^(10+3i)+ω₃ ^(10+3i)ω₁ ^(11+3i)=ψ₁+φ₁+Π_(local)−φ₁+ω₁ ^(11+3i)=ψ₁+Π_(local)+ω₁ ^(11+3i). Because of Π₁>Π_(local)+ψ₁, one has ω₁ ^(11+3i)=Π₁−(Π_(local)+ψ₁) time units. This implies that the robot task sequence θ_((8+3i)(11+3i)) takes Π₁ time units. Therefore, the theorem holds.

In this case, the local cycle takes Π_(local) time units. With Π_(local)<ψ₁, the global cycle takes ψ₁ time units at least. Due to Π₁>Π_(local)+ψ₁, one has that the whole period including a local and a global cycle must take Π₁ time units. Hence, Theorem 5 holds. When Π₁>Π_(local)+ψ₁ and Π_(local)<φ₁, there are two cases. Case 1: Π₁>φ₁+ψ₁; Case 2: Π₁≦φ₁+ψ₁. For these two cases, based on Theorem 5, one can easily have the following corollary.

Corollary 1: For a dual-arm cluster tool handling an ALD process, for the following operations of the system after the robot performs all the tasks before Node 13 shown in FIGS. 3B or 3C, if Π₁>Π_(local)+ψ₁ and Π_(local)<φ₁, then the cycle time of the system is

$\begin{matrix} {\Pi_{{({8 + {3\; i}})}{({11 + {3\; i}})}} = \left\{ \begin{matrix} {\Pi_{1},{{{if}\mspace{14mu}\Pi_{1}} > {\varphi_{1} + \psi_{1}}}} \\ {{\varphi_{1} + \psi_{1}},{{{if}\mspace{14mu}\Pi_{1}} \leq {\varphi_{1} + \psi_{1}}}} \end{matrix} \right.} & (2) \end{matrix}$

From Theorems 2, 4, and 5 and Corollary 1, one knows that, for a dual-arm cluster tool handling an ALD process, for the following operations of the system after the robot performs all the tasks before Node 13 shown in FIG. 3B or 3C, the system operates in a steady state and its cycle time is a constant. Thus, with Γ₁₃ computed via Algorithms 1 and 2, one can know which scheduling strategy is better. Similarly, from Theorem 3, one can decide which scheduling strategy given by Algorithms 1 and 2 is better. Notice that both algorithms consisting of some analytical expressions. Therefore, it is very efficient.

For the ALD case, when a wafer revisits a step it requires exactly the same processing environment as it visits in its prior step. Thus, there is only one PM for each step. The results obtained in this present invention are based on the wafer flow pattern (PM₁, (PM₂, PM₃)²). However, the proposed method can be applied to cases of parallel PMs with some adjustments. First, one need find a one-wafer cyclic schedule to schedule the tool. As it is pointed out in [Qiao et al., 2013], at each state, the process progress of wafers is different. Hence, for such cases, one can adjust these states in a similar way as ones for the wafer flow pattern (PM₁, (PM₂, PM₃)²) such that this requirement can be met when there are parallel PMs. After a one-wafer schedule is obtained, the algorithms similar to Algorithms 1 and 2 can be developed. In this way, the results in the present invention can be extended to cases including parallel PMs in a step.

C. ILLUMINATIVE EXAMPLES Example 1

The wafer processing time at Steps 1-3 is a₁=80 s, a₂=35 s, and a₃=85 s, respectively, loading and unloading time from LL is α=β=4 s, moving time from one PM to another is μ=3 s, and swapping time is λ=8 s.

If one adopts the existing scheduling method [Qiao et al., 2013], one knows the time to reach the steady state is 586 s by simulation. However, if a₂≦115 s, one finds that the result obtained by Algorithm 1 is better than that obtained by Algorithm 2 and its use leads to 491 s to reach the steady state. This is 16.2% reduction. If a₂>115 s, the result obtained by Algorithm 2 is better than that obtained by Algorithm 1 and its use yields 612 s while the existing one needs 759 s. The time to reach the steady state is 612 s. This is 19.4% reduction. One can vary certain process time and examine how it impacts the time to reach the first desired steady state. Let A, B and C denote the time to reach the first desired steady state by Algorithm 1, Algorithm 2 and existing method, respectively. The horizontal and vertical axes denote the number of wafer and steady state time, respectively. The line of rhombus, circle, square and triangle denote the time a₂, A (Algorithm 1), B (Algorithm 2) and C (existing method), respectively, as shown in FIG. 4A. If processing time at PM₂ is small, Algorithm 1 should be used and after it increases to a certain value, i.e., 115 s. Algorithm 2 performs better. The detailed performance comparison results are shown in Table 4.1.

TABLE 4.1 for Example 1 Wafer a₂ A B C Reduction (%) 1 35 483 608 586 17.6 2 45 483 608 586 17.6 3 77 483 608 586 17.6 4 84 489 608 586 16.6 5 85 491 608 586 16.2 6 86 494 608 590 16.3 7 87 497 608 597 16.8 8 90 506 608 610 17.0 9 91 509 608 615 17.2 10 92 512 608 621 17.6 11 93 515 608 627 17.9 12 94 518 608 633 18.2 13 95 521 608 639 18.5 14 102 549 608 681 19.4 15 103 553 608 687 19.5 16 104 557 608 693 19.6 17 105 561 608 699 19.7 18 110 591 608 729 18.9 19 111 597 608 735 18.8 20 112 603 609 741 18.6 21 115 621 612 759 19.4 22 125 681 632 819 22.8 23 130 711 642 849 24.4 24 140 771 672 909 26.1 25 150 831 702 969 27.6

Example 2

The wafer processing time at Steps 1-3 is a₁=80 s, a₂=85 s, and a₃=35 s, respectively, loading and unloading time from LL is α=β=4 s, moving time from one PM to another is μ=3 s, and swapping time is λ=8 s.

According to [Qiao et al., 2013], the time to reach the steady state is 586 s by simulation. If a₂≦90 s, one find that the result obtained by Algorithm 1 is better than that obtained by Algorithm 2 and its use leads to 491 s to reach the steady state. This is 16.2% reduction. If a₂>90 s, the result obtained by Algorithm 2 is better than that obtained by Algorithm 1 and its use yields 512 s while the existing one needs 635 s. The time to reach the steady state is 512 s. This is 19.4% reduction. By varying certain process time one can examine how it impacts the time to reach the desired first steady state. As shown in FIG. 4B and Table 4.2, the difference between the existing one and the proposed two algorithms is significant while that of the latter two is insignificant. When PM3's process time is small, Algorithm 1 is slightly better than Algorithm 2 and otherwise, Algorithm 2 is slightly preferred. The detailed performance comparison results are shown in Table 4.2.

TABLE 4.2 Example 2 Wafer a₃ A B C Reduction (%) 1 35 481 488 586 17.9 2 50 481 488 586 17.9 3 70 481 488 586 17.9 4 75 481 488 586 17.9 5 76 481 488 586 17.9 6 77 483 488 586 17.6 7 85 491 492 586 16.2 8 86 493 494 590 16.4 9 87 495 496 595 16.8 10 88 497 498 600 17.2 11 90 501 502 610 17.9 12 95 514 512 635 19.4 13 100 529 522 660 20.9 14 103 538 531 676 21.4 15 104 541 534 682 21.7 16 105 544 537 688 21.9 17 110 559 552 718 23.1 18 120 589 582 778 25.2 19 125 604 597 808 26.1 20 130 619 612 838 27.0 21 135 634 627 868 27.8 22 140 649 642 898 28.5 23 150 679 672 958 29.9

The industrial trend toward smaller wafer lot size and more variety of wafers tends to lead more and more frequent transient periods of cluster tools. Thus the research on transient processes becomes more important. Because a cluster tool has no buffer, scheduling and control become complex. Revisiting processes in wafer fabrication processes, e.g., an atomic layer deposition process, make such scheduling even more complex. Most previous researches focused on the steady state scheduling. Optimizing a schedule for start-up transient processes for dual-arm cluster tools is seriously lacking. The present invention presents the algorithms of the shortest time from an initial state to the first desired steady state and proves their effectiveness. Very significant reduction in time to reach the steady state is obtained in comparison with the existing method. Furthermore, when processing time fluctuates, one can observe the evolution of a transient process and how the desired steady state is reached, therefore enabling engineers to focus some critical processes for further improvement of the entire wafer fabrication process.

The embodiments disclosed herein may be implemented using general purpose or specialized computing devices, computer processors, or electronic circuitries including but not limited to digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA), and other programmable logic devices configured or programmed according to the teachings of the present disclosure. Computer instructions or software codes running in the general purpose or specialized computing devices, computer processors, or programmable logic devices can readily be prepared by practitioners skilled in the software or electronic art based on the teachings of the present disclosure.

In some embodiments, the present invention includes computer storage media having computer instructions or software codes stored therein which can be used to program computers or microprocessors to perform any of the processes of the present invention. The storage media can include, but is not limited to, floppy disks, optical discs, Blu-ray Disc, DVD, CD-ROMs, and magneto-optical disks, ROMs, RAMs, flash memory devices, or any type of media or devices suitable for storing instructions, codes, and/or data.

The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The present embodiment is therefore to be considered in all respects as illustrative and not restrictive. The scope of the invention is indicated by the appended claims rather than by the foregoing description, and all changes that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. 

What is claimed is:
 1. A computer implemented method for scheduling a dual-armed cluster tool with wafer revisiting for a transient process of a wafer fabrication system, the dual-armed cluster tool comprising a robot having two arms, and three process modules PMs, each for performing a wafer-processing Step, where PM_(i) is used for performing a processing Step i of the three wafer-processing steps for each wafer, iεN₃={1, 2, 3}, the wafer revisiting comprising a wafer flow pattern as (PM₁, (PM₂, PM₃)²) with (PM₂, PM₃)² being a 2-revisiting process, the method comprising: obtaining, by a processor, a wafer processing time a_(i) for each of the three processing Step iεN₃={1, 2, 3}, a wafer loading time β for the robot, a wafer unloading time α for the robot, a moving time μ for the robot moving from one process module to another, and a swapping time λ for a swap operation executed by the robot as follows: holding a wafer in one arm; unloading a processed wafer from PM_(i) by the other arm; rotating; and loading the wafer into PM_(i); determining, by a processor, a plurality of algorithms of the transient process based on a plurality of robot task sequences θs for the robot, a plurality of system states M_(j), j being a positive integer, and a program evaluation and review technique, wherein the transient process starts from an initial state among the system states and reaches to a steady state among the system states, and the initial state represents that no wafer is processed in the three PMs and the arms of the robot are empty, and the final states represents that a 3rd, a 1st and a 2nd wafers are processed in PM₁, PM₂, and PM₃ for their 1st, 4th, and 3rd operations respectively, wherein each of the system states represents a Node k, k being a positive integer, in the program evaluation and review technique, wherein the algorithms of the transient process execute a plurality of if-then instructions as follows: if Π₁≦Π_(local)+ψ₁, then a cycle time of the wafer fabrication system is a constant, and $\begin{matrix} {\Pi_{{({8 + {3\; i}})}{({11 + {3\; i}})}} = \;\left\{ {\begin{matrix} {{2\Pi_{local}},{{{if}\mspace{14mu}\Pi_{local}} \geq \;\psi_{1}}} \\ {{\Pi_{local} + \psi_{1}},{{{if}\mspace{14mu}\psi_{1}} > \Pi_{local} \geq \varphi_{1}}} \\ {{\psi_{1} + \varphi_{1}},{{{if}\mspace{14mu}\varphi_{1}} > \Pi_{local}}} \end{matrix};} \right.} & \; \end{matrix}$ if Π₁>2Π_(local) and Π_(local)≧ψ₁, then a cycle time of the wafer fabrication system is Π₁ time units; and if Π₁>Π_(local)+ψ₁ and φ₁≦Π_(local)<ψ₁, then a cycle time of the wafer fabrication system is Π₁ time units; where Π_(i)=a_(i)+λ denote a time needed for completing a wafer at the processing Step i; Π_(local)=max{Π₂, Π₃}; ψ₁=3λ+4μ+α+β; Π_(ij) denotes a time taken by θ_(ij), where θ_(ij), j≧0, denotes a robot task sequence which transfers M_(i) to M_(j); and φ₁=2μ+2λ denotes a local robot cycle time; computing, by a processor, a time to reach the steady state from the initial state via performing each of the algorithms of the transient process based on the wafer processing time, the wafer loading time, the wafer unloading time, the moving time, and the swapping time; and determining, by a processor, a corresponding robot task sequences given by the one of the algorithms of the transient process having a minimal time to reach the steady state among the computed times, wherein the determined robot task sequences are used for scheduling the transient process.
 2. The method of claim 1, wherein the time to reach the steady sate from the initial state is computed by one of the algorithms of the transient process as follows: a. Γ₂=α+μ+β; b. Γ_(2F)=Γ₂+max{a₁, (2μ+α)}; c. Γ₃=Γ_(2F)+λ; d. Γ₄=Γ₃+μ+β; e. Γ_(3F)=max{(Γ₃+a₁), (Γ₄+2μ+α)}; f. Γ₅=Γ_(3F)+λ; g. Γ_(4F)=max{(Γ₄+a₂), (Γ_(3F)+λ+μ)}; h. Γ₆=Γ_(4F)+λ; i. Γ₇=Γ₆+μ+β; j. Γ_(7F)=Γ₇+a₃; k. Γ_(6F)=max{(Γ_(7F)+α+μ), (Γ₆+a₂)}; l. Γ₈=Γ_(6F)+λ; m. Γ₉=Γ₈+μ+β; n. Γ_(5F)=max{(Γ₉+2μ+α), (Γ₅+a₁)}; o. Γ_(8F)=max{(Γ_(5F)+μ+λ), (Γ₈+a₂)}; p. Γ₁₀=Γ_(8F)+λ; q. Γ_(9F)=max{(Γ₁₀+μ), (Γ₉+a₃)}; r. Γ₁₁=Γ_(9F)+λ; s. Γ_(10F)=max{(Γ₁₁+μ), (Γ₁₀+a₂)}; t. Γ_(11F)=max{(Γ_(10F)+λ+μ), (Γ₁₁+a₃)}; u. Γ₁₂=max{(Γ_(5F)+λ+a₁), (Γ_(11F)+λ+2μ+α+β)}; v. Γ₁₃=Γ₁₂+λ; and w. Stop; where Γ_(k) denotes a time from the initial state at Node 1 to the steady state at Node k; wherein the computed Γ₁₃ is the time to reach the steady sate from the initial state.
 3. The method of claim 1, wherein the time to reach the steady sate from the initial state is computed by one of the algorithms of the transient process as follows: a. Γ₂=α+μ+β; b. Γ_(2F)=Γ₂+max{a₁, (2μ+α)}; c. Γ₃=Γ_(2F)+λ; d. Γ₄=Γ₃+μ+β; e. Γ_(3F)=max{(Γ₃+a₁), (Γ₄+2μ+α)}; f. Γ₅=Γ_(3F)+λ; g. Γ_(4F)=max{(Γ₄+a₂), (Γ_(3F)+λ+μ)}; h. Γ₆=Γ_(4F)+λ; i. Γ₇=Γ₆+μ+β; j. Γ_(6F)=max {(Γ₆+a₂), (Γ₇+μ)}; k. Γ_(7F)=max{(Γ₇+a₃), (Γ_(6F)+μ+α)}; l. Γ₈=Γ_(7F)+λ; m. Γ₉=Γ₈+μ+β; n. Γ_(5F)=max{(Γ₅+a₁), (Γ₉+2μ+α)}; o. Γ_(9F)=max{(Γ₉+a₂), (Γ_(5F)+μ+λ)}; p. Γ₁₀=Γ_(9F)+λ; q. Γ_(8F)=max{(Γ₈+a₃), (Γ₁₀+μ)}; r. Γ₁₁=Γ_(8F)+λ; s. Γ_(10F)=max{(Γ₁₀+a₂), (Γ₁₁+μ)}; t. Γ_(11F)=max{(Γ₁₁+a₃), (Γ_(10F)+μ+λ)}; u. Γ₁₂=max{(Γ_(5F)+λ+a₁), (Γ_(11F)+λ+2μ+α+β)}; v. Γ₁₃=Γ₁₂+λ; and w. Stop; where Γ_(k) denotes a time from the initial state at Node 1 to the steady state at Node k; wherein the computed Γ₁₃ is the time to reach the steady sate from the initial state.
 4. A non-transitory computer-readable medium whose contents cause a computing system to perform a computer implemented method for scheduling a dual-armed cluster tools with wafer revisiting for a transient process of a wafer fabrication system, the dual-armed cluster tool comprising a robot having two arms, and three process modules PMs, each for performing a wafer-processing Step, where PM_(i) is used for performing a processing Step i of the three wafer-processing steps for each wafer, iεN₃={1, 2, 3}, the wafer revisiting comprising a wafer flow pattern as (PM₁, (PM₂, PM₃)²) with (PM₂, PM₃)² being a 2-revisiting process, the method comprising: obtaining, by a processor, a wafer processing time a_(i) for each of the three processing Step iεN₃={1, 2, 3}, a wafer loading time β for the robot, a wafer unloading time α for the robot, a moving time μ for the robot moving from one process module to another, and a swapping time λ for a swap operation executed by the robot as follows: holding a wafer in one arm; unloading a processed wafer from PM_(i) by the other arm; rotating; and loading the wafer into PM_(i); determining, by a processor, a plurality of algorithms of the transient process based on a plurality of robot task sequences θs for the robot, a plurality of system states M_(j), j being a positive integer, and a program evaluation and review technique, wherein the transient process starts from an initial state among the system states and reaches to a steady state among the system states, and the initial state represents that no wafer is processed in the three PMs and the arms of the robot are empty, and the final states represents that a 3rd, a 1st and a 2nd wafers are processed in PM₁, PM₂, and PM₃ for their 1st, 4th, and 3rd operations respectively, wherein each of the system states represents a Node k, k being a positive integer, in the program evaluation and review technique, wherein the algorithms of the transient process execute a plurality of if-then instructions as follows: if Π₁≦Π_(local)+ψ₁, then a cycle time of the wafer fabrication system is a constant, and $\Pi_{{({8 + {3\; i}})}{({11 + {3\; i}})}} = \;\left\{ {\begin{matrix} {{2\;\Pi_{local}},{{{if}\mspace{14mu}\Pi_{local}} \geq \;\psi_{1}}} \\ {{\Pi_{local} + \psi_{1}},{{{if}\mspace{14mu}\psi_{1}} > \Pi_{local} \geq \varphi_{1}}} \\ {{\psi_{1} + \varphi_{1}},{{{if}\mspace{14mu}\varphi_{1}} > \Pi_{local}}} \end{matrix};} \right.$ if Π₁>2Π_(local) and Π_(local)≧ψ₁, then a cycle time of the wafer fabrication system is Π₁ time units; and if Π₁>Π_(local)+ψ₁ and φ₁≦Π_(local)<ψ₁, then a cycle time of the wafer fabrication system is Π₁ time units; where Π_(i)=a_(i)+λ denote a time needed for completing a wafer at the processing Step i; Π_(local)=max {Π₂, Π₃}; ψ₁=3λ+4μ+α+β; Π_(ij) denotes a time taken by θ_(ij), where θ_(ij), j≧0, denotes a robot task sequence which transfers M_(i) to M_(j); and φ₁=2μ+2λ denotes a local robot cycle time; computing, by a processor, a time to reach the steady state from the initial state via performing each of the algorithms of the transient process based on the wafer processing time, the wafer loading time, the wafer unloading time, the moving time, and the swapping time; and determining, by a processor, a corresponding robot task sequences given by the one of the algorithms of the transient process having a minimal time to reach the steady state among the computed times, wherein the determined robot task sequences are used for scheduling the transient process.
 5. The non-transitory computer-readable medium of claim 4, wherein the time to reach the steady sate from the initial state is computed by one of the algorithms of the transient process as follows: a. Γ₂=α+μ+β; b. Γ_(2F)=Γ₂+max{a₁, (2μ+α)}; c. Γ₃=Γ_(2F)+λ; d. Γ₄=Γ₃+μ+β; e. Γ_(3F)=max{(Γ₃+a₁), (Γ₄+2μ+α)}; f. Γ₅=Γ_(3F)+λ; g. Γ_(4F)=max{(Γ₄+a₂), (Γ_(3F)+λ+μ)}; h. Γ₆=Γ_(4F)+λ; i. Γ₇=Γ₆+μ+β; j. Γ_(7F)=Γ₇+a₃; k. Γ_(6F)=max{(Γ_(7F)+α+μ), (Γ₆+a₂)}; l. Γ₈=Γ_(6F)+λ; m. Γ₉=Γ₈+μ+β; n. Γ_(5F)=max{(Γ₉+2μ+α), (Γ₅+a₁)}; o. Γ_(8F)=max{(Γ_(5F)+μ+λ), (Γ₈+a₂)}; p. Γ₁₀=Γ_(8F)+λ; q. Γ_(9F)=max{(Γ₁₀+μ), (Γ₉+a₃)}; r. Γ₁₁=Γ_(9F)+λ; s. Γ_(10F)=max{(Γ₁₁+μ), (Γ₁₀+a₂)}; t. Γ_(11F)=max{(Γ_(10F)+λ+μ), (Γ₁₁+a₃)}; u. Γ₁₂=max{(Γ_(5F)+λ+a₁), (Γ_(11F)+λ+2μ+α+β)}; v. Γ₁₃=Γ₁₂+λ; and w. Stop; where Γ_(k) denotes a time from the initial state at Node 1 to the steady state at Node k; wherein the computed Γ₁₃ is the time to reach the steady sate from the initial state.
 6. The non-transitory computer-readable medium of claim 4, wherein the time to reach the steady sate from the initial state is computed by one of the algorithms of the transient process as follows: a. Γ₂=α+μ+β; b. Γ_(2F)=Γ₂+max{a₁, (2μ+α)}; c. Γ₃=Γ_(2F)+λ; d. Γ₄=Γ₃+μ+β; e. Γ_(3F)=max{(Γ₃+a₁), (Γ₄+2μ+α)}; f. Γ₅=Γ_(3F)+λ; g. Γ_(4F)=max{(Γ₄+a₂), (Γ_(3F)+λ+μ)}; h. Γ₆=Γ_(4F)+λ; i. Γ₇=Γ₆+μ+β; j. Γ_(6F)=max {(Γ₆+a₂), (Γ₇+μ)}; k. Γ_(7F)=max{(Γ₇+a₃), (Γ_(6F)+μ+α)}; l. Γ₈=Γ_(7F)+λ; m. Γ₉=Γ₈+μ+β; n. Γ_(5F)=max{(Γ₅+a₁), (Γ₉+2μ+α)}; o. Γ_(9F)=max{(Γ₉+a₂), (Γ_(5F)+μ+λ)}; p. Γ₁₀=Γ_(9F)+λ; q. Γ_(8F)=max{(Γ₈+a₃), (Γ₁₀+μ)}; r. Γ₁₁=Γ_(8F)+λ; s. Γ_(10F)=max{(Γ₁₀+a₂), (Γ₁₁+μ)}; t. Γ_(11F)=max{(Γ₁₁+a₃), (Γ_(10F)+μ+λ)}; u. Γ₁₂=max{(Γ_(5F)+λ+a₁), (Γ_(11F)+λ+2μ+α+β)}; v. Γ₁₃=Γ₁₂+λ; and w. Stop; where Γ_(k) denotes a time from the initial state at Node 1 to the steady state at Node k; wherein the computed Γ₁₃ is the time to reach the steady sate from the initial state.
 7. The method of claim 1, wherein the algorithms of the transient process further execute a plurality of if-then instructions as follows: if Π₁≦Π_(local)+ψ₁, then ω₁ ^(8+3i)=0 holds, i≧0; if 2Π_(local)≧Π₁>Π_(local)+ψ₁ and Π_(local)≧ψ₁, then a cycle time of the wafer fabrication system is 2Π_(local) time units; and if Π₁>Π_(local)+ψ₁ and Π_(local)<φ₁, then a cycle time of the wafer fabrication system is $\Pi_{{({8 + {3\; i}})}{({11 + {3\; i}})}} = \left\{ {\begin{matrix} {\Pi_{1},{{{if}\mspace{14mu}\Pi_{1}} > {\varphi_{1} + \psi_{1}}}} \\ {{\varphi_{1} + \psi_{1}},{{{if}\mspace{14mu}\Pi_{1}} \leq {\varphi_{1} + \psi_{1}}}} \end{matrix};} \right.$ where ω_(i) ^(j) denotes a robot waiting time before the robot unloads a wafer from the PM_(i) during a period from states M_(j-1) to M_(j), j>0.
 8. The non-transitory computer-readable medium of claim 4, wherein the algorithms of the transient process further execute a plurality of if-then instructions as follows: if Π₁≦Π_(local)+ψ₁, then ω₁ ^(8+3i)=0 holds, i≧0; if 2Π_(local)≧Π₁>Π_(local)+ψ₁ and Π_(local)≧ψ₁, then a cycle time of the wafer fabrication system is 2Π_(local) time units; and if Π₁>Π_(local)+ψ₁ and Π_(local)<φ₁, then a cycle time of the wafer fabrication system is $\Pi_{{({8 + {3\; i}})}{({11 + {3\; i}})}} = \left\{ {\begin{matrix} {\Pi_{1},{{{if}\mspace{14mu}\Pi_{1}} > {\varphi_{1} + \psi_{1}}}} \\ {{\varphi_{1} + \psi_{1}},{{{if}\mspace{14mu}\Pi_{1}} \leq {\varphi_{1} + \psi_{1}}}} \end{matrix};} \right.$ where ω_(i) ^(j) denotes a robot waiting time before the robot unloads a wafer from the PM_(i) during a period from states M_(j-1) to M_(j), j>0. 